#pragma once
#include "UltimateSubsystemRegistryPrerequisites.h"

class _UltimateSubsystemRegistryExport UltimatePhysicsActor
{
public:

	
	virtual void addForce(Ogre::Vector3 force)=0;
	virtual void addTorque(Ogre::Vector3 force)=0;

	virtual void setGlobalPosition(Ogre::Vector3 position)=0;
	virtual Ogre::Vector3 getGlobalPosition()=0;
	virtual void setGlobalOrientation(Ogre::Quaternion orientation)=0;
	virtual Ogre::Quaternion getGlobalOrientation()=0;
	virtual void setUserData(void* userData)=0;
	virtual void* getUserData()=0;
	virtual void setGroup(int i)=0;
	virtual int getGroup()=0;
	virtual void setLookAt(Ogre::Vector3 target)=0;
	virtual Ogre::Vector3 getFacingDir()=0;
	virtual void disableGravity()=0;
	virtual void setKinematic(bool isKinematic)=0;


	UltimatePhysicsActor(void);
	virtual ~UltimatePhysicsActor(void);
	
};

